package com.learn.algorlthm;

/**
 * @classname:
 * @Description:连续子数组的最大和
 * @author: yfpu(fengpu.yang @ ucarinc.com)
 * @Date: 2018-08-07 21:43
 * 题目描述：
 * {6, -3, -2, 7, -15, 1, 2, 2}，连续子数组的最大和为 8（从第 0 个开始，到第 3 个为止）。
 */
public class Learn42 {

    public static int findGreatestSumOfSubArray(int[] nums) {

        if (nums == null || nums.length ==0)
            return 0;

        int minValue = Integer.MIN_VALUE, sums = 0;
        for (int num : nums) {
            sums  = sums <= 0 ? num : num + sums;
            minValue = Math.max(minValue, sums);
        }
        return minValue;
    }

}
